Bandwidth is a key resource for exchanging information in a communication network. To provision quality of service (QoS) in a network, bandwidth resources in the network must be managed appropriately to avoid over-subscription leading to congestion. In a network defined by a routing domain, bandwidth on each link is dynamically allocated among data flows traversing the routing domain from an ingress edge router to an egress edge router.
Bandwidth management (BM) comprises allocation, release, and tracking of network bandwidth such that it can be efficiently utilized. Routing topology BM (RTBM) refers to BM that utilizes complete or summarized information on relevant network topology. An RTBM system comprises two key functional components: a topology manager (TM), which tracks topology information and generates paths in a manner that is consistent with those used by routers for packet forwarding, and an admission controller (AC), which determines if a session may be admitted into a routing domain and manages corresponding allocation and subsequent release of bandwidth according to paths generated by the topology manager.
Link bandwidth may be reserved for a data flow in a distributed manner, wherein each router along a path of a reservation request makes a local admission control decision to determine if the request may be accepted. If all the routers along the path accept the request, then the data flow is admitted and an appropriate amount of bandwidth is reserved along the path. Alternatively, in a centralized approach, bandwidth reservation requests are forwarded to a central server, which determines if the requests may be accepted, allocates bandwidth accordingly, and keeps track of all bandwidth allocations that it has made.
A routing domain is often structured hierarchically for scalability. Bandwidth management in such a routing domain must be designed to be scalable as well as efficient. However, the known bandwidth reservation approaches, including the two above-mentioned approaches, have shortcomings that limit scalability and/or efficiency of associated bandwidth management. For example, the known distributed approaches may be prohibitively costly and/or slow for very large systems since it requires all or a portion of the routers in the routing domain to manage per-flow state and to execute local admission control to determine if a reservation request can be accepted. Moreover, using the known centralized approach is not scalable for very large systems due, for instance, to storage requirements for a single centralized server to maintain required topology tables and databases for implementing necessary protocols associated with bandwidth management.
Thus, there exists a need for methods that can enable a plurality of bandwidth managers to cooperate among themselves in executing session admission control and managing topology in a hierarchical routing domain.